Tabular presentation of data in columns is a conventional technique for presenting data in computer applications. Each column may be associated with a column width, and the table may be associated with a table width. Table widths can vary when tabular data is displayed via a user interface that has no fixed width. For example, when displaying a table in a web page via a web browser, the width of an application window assigned to the browser can be controlled by a user. Similarly, table widths may be changed to accommodate different printing scenarios. If a table is printed to a page in portrait orientation, the table width is one size (e.g., 6.5 inches). If the same table is printed in landscape orientation, the table width may be a different size (e.g., 9 inches). The table width also may vary to accommodate changes in paper sizes (legal size, A4 size).
In many applications, such as spreadsheets, word processors and web pages, column widths are defined statically. The applications' user interfaces do not naturally scale the column widths to fit changes in on screen display widths or in rendered display widths (such as on paper). Some rendering systems for web pages may scale all column widths within a table equally in response to changes in the width of the application window. If an application window shrinks to 80% of its former width, all column widths in the table shrink by a corresponding percentage.
Various computing platforms also limit the amount of data that can be displayed intelligibly. A Personal Digital Assistant (PDA) typically has much less screen area than a personal computer (PC). Therefore, different display controls govern from device to device.
Columns in a table may be resized to a width too small or too large to properly display data. Some types of data should be displayed in columns with specific widths for perceptual quality. For example, if a column displaying a telephone number had its width reduced to the point that trailing telephone digits were truncated, the displayed information would be useless. Alternatively, if the column width increased so that the column width for a telephone number could be increased beyond the size that is necessary to display all digits of the telephone number, providing such an increase in width would be wasteful because there is no other useful information to display. Similarly, it is almost useless to display half a check-box. Information in a check-box or a telephone number column is useful only if the data is displayed in its entirety.
For other types of data, it is possible to shrink the width of a tabular column in which it is displayed without an appreciable loss in perceptual quality. A user may be able to review a portion of the data that remains displayed in the smaller column and perceive useful information. For example, one might gleam useful information from a truncated display of a name or a description.
Therefore, there is a need in the art for a control system for presentation of tabular data that is sensitive to different data types and ensures, where possible, that certain minimum or maximum column widths are maintained. There is a further need in the art for such a control system that is cognizant of different priorities in display width that are assigned to different types of data displayed in a table.